package com.Questions.tanxin;


/**
 * 盛水最多的容器
 */
public class leetcode11 {
    // 双指针的解法 将左指针和右指针分别指向 数组的左右两端
    // 然后计算面积然后将较小的指针 向另外一个指针移动
    // 证明：因为 如果移动大指针 距离显然变小 大指针指向的值变得更大 结果仍然会变小
    // 自然可以证明 每次要移动较小的指针
    public int maxArea(int[] height) {
        int l=0;
        int r=height.length-1;
        int ans=0;
        while (l<r){
            int area =Math.min(height[l],height[r])*(r-l);
            ans=Math.max(ans,area);
            if(height[l]<=height[r]){
                ++l;
            }else{
                --r;
            }
        }
        return ans;
    }
}
